Accurate Dead Code Detection in Embedded C Code by Arithmetic Constraint Solving
نویسندگان
چکیده
Unreachable code fragments in software, despite not having a negative impact on the functional behavior, can have a bad effect in other areas, such as code optimization or coverage-based code validation and certification. Especially the latter is important in industrial, safety critical environments, where detecting such dead code is a major goal to adjust the coverage of software tests. In the context of embedded systems we focus on C programs which are reactive, control-oriented, and floating-point dominated. Such programs are either automatically generated from Simulink-plus-Stateflow models or hand-written according to coding guidelines. While there are various techniques – e. g. abstract interpretation or Counterexample guided abstraction refinement (CEGAR) – to deal with individual issues of this domain, there is none which can cover all of them. The AVACS transfer project T1 aims at the combination of these techniques in order to provide an accurate and efficient dead code detection. In this paper we present the ideas and goals of the project as well as the current status (including very promising experimental results) and future challenges.
منابع مشابه
Advancing software model-checking by SMT interpolation beyond decidable arithmetic theories: an approach to verify safety properties in embedded and hybrid system models
Envisage a world where embedded and hybrid system models are analysed with scrutiny by algorithms that automatically, efficiently, and unhesitatingly can answer questions about reachability and stability analyses as well as asserting safety of these models. In such a world, embedded and hybrid systems are significantly more reliable than what we currently see in our life; software has fewer bug...
متن کاملDead Code Detection On Class Level
This paper contributes to code clone detection by providing an algorithm that calculates canonical forms of arithmetic and conditional expressions. An experimental evaluation shows the relevance of such expressions in real code. The proposed normalization can be used in addition to dataflow normalizations.
متن کاملSide channel parameter characteristics of code injection attacks
Embedded systems are suggestive targets for code injection attacks in the recent years. Software protection mechanisms, and in general computers, are not usually applicable in embedded systems since they have limited resources like memory and process power. In this paper we investigate side channel characteristics of embedded systems and their applicability in code injection attack detection. T...
متن کاملENTROPY OF GEODESIC FLOWS ON SUBSPACES OF HECKE SURFACE WITH ARITHMETIC CODE
There are dierent ways to code the geodesic flows on surfaces with negative curvature. Such code spaces give a useful tool to verify the dynamical properties of geodesic flows. Here we consider special subspaces of geodesic flows on Hecke surface whose arithmetic codings varies on a set with innite alphabet. Then we will compare the topological complexity of them by computing their topological ...
متن کاملEffectiveness of Optimizing Compilation for CLP(R)
Constraint Logic Programming (CLP) languages extend logic programming by allowing constraints from diierent domains such as real numbers or Boolean functions. They have proved to be ideal for expressing problems that require interactive mathematical modelling and complex combinatorial optimization problems. However, CLP languages have mainly been considered as research systems, useful for rapid...
متن کامل